SELECT ' ' "Elenco switch Liberi" ,x.* FROM (

select 'Chiuso ' " Stato ",
concat('IT018E',concat(substr(concat('00000000000',c.CODICE_ALLACCIAMENTO),-7,7),substr(c.PROGRESSIVO_UTENZA,2,1))) POD,
c.codice_contratto,
to_char(c.data_chiusura),
c.CODICE_TIPO_USO,
c.CODICE_TARIFFA,
c.CODICE_USO,
to_char(c.POTENZA_IMPEGNATA),
to_char(c.POTENZA_TOLLERATA),
c.FASI_PREVISTE,
c.TENSIONE_PREVISTA,
c.PARTITA_IVA,
c.CODICE_FISCALE,
c.CODICE_MODELLO_CONTATORE_1,
c.MATRICOLA_CONTATORE_1,
c.CODICE_MODELLO_CONTATORE_2,
c.MATRICOLA_CONTATORE_2,
c.CODICE_MODELLO_CONTATORE_3,
c.MATRICOLA_CONTATORE_3,
c.CODICE_GRUPPO_LETTURA,
c.CODICE_GRUPPO_BOLLETTAZIONE,
C.TITOLARE



from ASM_SWITCH_CONTRATTI_1 c


union ALL

select 'Aperto' " Stato ",
concat('IT018E',concat(substr(concat('00000000000',c.CODICE_ALLACCIAMENTO),-7,7),substr(c.PROGRESSIVO_UTENZA,2,1))) POD,
a.codice_contratto,
DECODE (a.data_avvio,c.data_chiusura,null,a.data_avvio) data_operazione,
DECODE (a.CODICE_TIPO_USO,c.CODICE_TIPO_USO,null,a.CODICE_TIPO_USO) CODICE_TIPO_USO,
DECODE (a.CODICE_TARIFFA,c.CODICE_TARIFFA,null,a.CODICE_TARIFFA) CODICE_TARIFFA,
DECODE (a.CODICE_USO,c.CODICE_USO,null,a.CODICE_USO) CODICE_USO,
DECODE (a.POTENZA_IMPEGNATA,c.POTENZA_IMPEGNATA,null,a.POTENZA_IMPEGNATA) POTENZA_IMPEGNATA,
DECODE (a.POTENZA_TOLLERATA,c.POTENZA_TOLLERATA,null,a.POTENZA_TOLLERATA) POTENZA_TOLLERATA,
DECODE (a.FASI_PREVISTE,c.FASI_PREVISTE,null,a.FASI_PREVISTE) FASI_PREVISTE,
DECODE (a.TENSIONE_PREVISTA,c.TENSIONE_PREVISTA,null,a.TENSIONE_PREVISTA) TENSIONE_PREVISTA,
DECODE (a.PARTITA_IVA,c.PARTITA_IVA,null,a.PARTITA_IVA) PARTITA_IVA,
DECODE (a.CODICE_FISCALE,c.CODICE_FISCALE,null,a.CODICE_FISCALE) CODICE_FISCALE,
DECODE (a.CODICE_MODELLO_CONTATORE_1,c.CODICE_MODELLO_CONTATORE_1,null,a.CODICE_MODELLO_CONTATORE_1) CODICE_MODELLO_CONTATORE_1,
DECODE (a.MATRICOLA_CONTATORE_1,c.MATRICOLA_CONTATORE_1,null,a.MATRICOLA_CONTATORE_1) MATRICOLA_CONTATORE_1,
DECODE (a.CODICE_MODELLO_CONTATORE_2,c.CODICE_MODELLO_CONTATORE_2,null,a.CODICE_MODELLO_CONTATORE_2) CODICE_MODELLO_CONTATORE_2,
DECODE (a.MATRICOLA_CONTATORE_2,c.MATRICOLA_CONTATORE_2,null,a.MATRICOLA_CONTATORE_2) MATRICOLA_CONTATORE_2,
DECODE (a.CODICE_MODELLO_CONTATORE_3,c.CODICE_MODELLO_CONTATORE_3,null,a.CODICE_MODELLO_CONTATORE_3) CODICE_MODELLO_CONTATORE_3,
DECODE (a.MATRICOLA_CONTATORE_3,c.MATRICOLA_CONTATORE_3,null,a.MATRICOLA_CONTATORE_3) MATRICOLA_CONTATORE_3,
DECODE (a.CODICE_GRUPPO_LETTURA,c.CODICE_GRUPPO_LETTURA,null,a.CODICE_GRUPPO_LETTURA) CODICE_GRUPPO_LETTURA,
DECODE (a.CODICE_GRUPPO_BOLLETTAZIONE,c.CODICE_GRUPPO_BOLLETTAZIONE,null,a.CODICE_GRUPPO_BOLLETTAZIONE) CODICE_GRUPPO_BOLLETTAZIONE,
DECODE (a.titolare,c.titolare,null,a.titolare) titolare

from ASM_SWITCH_CONTRATTI_1 c,ASM_SWITCH_CONTRATTI_2 a
where a.codice_allacciamento=c.codice_allacciamento
and   a.progressivo_utenza=c.progressivo_utenza) x

ORDER BY pod," Stato " desc